home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Kellogg's Amérique
/
Kellogg's Amérique
/
main.swf
/
scripts
/
Session.as
< prev
next >
Wrap
Text File
|
2020-08-04
|
5KB
|
177 lines
package
{
import flash.net.SharedObject;
public class Session
{
public var NB_SESSIONS_MAX:Number = 5;
const NB_JEUX_MAX:Number = 9;
public var IDENTIFIANT_NB_CARACTERES_MAX:int = 8;
const ID:String = "Kelloggs_Ushuaia";
private var cd:String;
private var so:SharedObject;
private var session_courante:Number;
public function Session(param1:String)
{
NB_SESSIONS_MAX = 5;
IDENTIFIANT_NB_CARACTERES_MAX = 8;
super();
cd = param1;
so = SharedObject.getLocal(ID);
if(so.data.session == undefined)
{
so.data.session = new Array();
}
}
public function creer(param1:String, param2:String) : String
{
var _loc3_:Number = NaN;
_loc3_ = 1;
while(_loc3_ <= NB_SESSIONS_MAX)
{
if(so.data.session[_loc3_] != undefined)
{
if(so.data.session[_loc3_].nom == param1)
{
return "Ce pseudo est d�j� utilis�";
}
}
_loc3_++;
}
_loc3_ = 1;
while(_loc3_ <= NB_SESSIONS_MAX)
{
if(so.data.session[_loc3_] == undefined)
{
so.data.session[_loc3_] = {
"nom":param1,
"mdp":param2,
"cd":new Array()
};
MAJ();
selectionner(_loc3_,param2);
return "";
}
_loc3_++;
}
return "Les " + NB_SESSIONS_MAX + " comptes sont d�j� utili�s.";
}
public function afficher_liste() : Array
{
var _loc1_:Array = null;
var _loc2_:Number = NaN;
_loc1_ = new Array();
_loc2_ = 1;
while(_loc2_ <= NB_SESSIONS_MAX)
{
if(so.data.session[_loc2_] != undefined)
{
_loc1_.push(so.data.session[_loc2_].nom);
}
_loc2_++;
}
return _loc1_;
}
public function jeu_actif(param1:Number) : Boolean
{
if(param1 == 1 || nom == "cheat")
{
return true;
}
return afficher_score_detail(session_courante,param1 - 1) > -1;
}
public function get nom() : String
{
return so.data.session[session_courante].nom;
}
public function afficher_score_detail(param1:Number, param2:Number) : Number
{
if(so.data.session[param1].cd == undefined)
{
return -1;
}
if(so.data.session[param1].cd[cd] == undefined)
{
return -1;
}
if(so.data.session[param1].cd[cd][param2] == undefined)
{
return -1;
}
return so.data.session[param1].cd[cd][param2];
}
public function afficher_score(param1:Number) : Number
{
return afficher_score_detail(session_courante,param1);
}
public function selectionner(param1:Number, param2:String) : Boolean
{
session_courante = param1;
so.data.dernierSession = param1;
return true;
}
public function reset() : void
{
so.clear();
}
public function supprimer(param1:String) : void
{
var _loc2_:Number = NaN;
_loc2_ = 1;
while(_loc2_ <= NB_SESSIONS_MAX)
{
if(so.data.session[_loc2_] != undefined)
{
if(so.data.session[_loc2_].nom == param1)
{
so.data.session[_loc2_] = undefined;
MAJ();
break;
}
}
_loc2_++;
}
}
public function enregistrer_score(param1:Number, param2:Number) : void
{
trace("Session.as enregistrer_score " + param1 + " = " + param2);
if(param2 > afficher_score(param1))
{
trace("enregistrer_score");
trace(so.data.session[session_courante]);
trace(so.data.session[session_courante].cd[cd]);
if(so.data.session[session_courante].cd[cd] == undefined)
{
so.data.session[session_courante].cd[cd] = new Array();
}
so.data.session[session_courante].cd[cd][param1] = param2;
MAJ();
}
}
private function MAJ() : void
{
so.flush();
}
}
}